/*
- Malt Project - node.hpp
- This document is protected by the GPL protocol.
- Writer:@Index-Flandre
*/

#ifndef MALT_NODE_H
#define MALT_NODE_H

#include "./object.hpp"

namespace malt {
	struct Node {
			unsigned long use_size;
			Object *obj;
			Node *next;

			void append(Node *obj) {
				next = obj;
				next->use_size++;
			}
			void marking() {
				if (obj != NULL) obj->marking();
				if (next != NULL) next->marking();
			}
		};
};

#endif